﻿namespace Baddies.Events
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using Microsoft.Xna.Framework;

    /// <summary>
    /// Arguments for updating a tile by clicking on screen.
    /// </summary>
    public class TilePaintArg : EventArgs
    {
        /// <summary>
        /// Position of the tile in the tileSet.
        /// </summary>
        private Vector2 tileSetPos;

        /// <summary>
        /// Position of the mouse on the screen.
        /// </summary>
        private Vector2 screenPos;

        /// <summary>
        /// Gets the tile position in the tileset.
        /// </summary>
        /// <value>The position of the tile.</value>
        public Vector2 TileSetPos
        {
            get { return this.tileSetPos; }
        }

        /// <summary>
        /// Gets the tile position in the screen.
        /// </summary>
        /// <value>Position of the tile on the screen.</value>
        public Vector2 ScreenPos
        {
            get { return this.screenPos; }
        }

        /// <summary>
        /// Initializes a new instance of the TilePaintArg class.
        /// </summary>
        /// <param name="tileX">X position in the tileset.</param>
        /// <param name="tileY">Y position in the tileset.</param>
        /// <param name="screenX">X position in the screen.</param>
        /// <param name="screenY">Y position in the screen.</param>
        public TilePaintArg(int tileX, int tileY, int screenX, int screenY)
        {
            this.tileSetPos = new Vector2(tileX, tileY);
            this.screenPos = new Vector2(screenX, screenY);
        }
    }
}
